
// 物品工具

//灵饰战斗属性
export const ls_zdsx = ["气血回复效果", "抗法术暴击等级", "格挡值", "法术防御", "抗物理暴击等级", "封印命中等级", "抵抗封印等级", "固定伤害", "法术伤害", "法术暴击等级", "物理暴击等级", "狂暴等级", "穿刺等级", "法术伤害结果", "物理伤害结果", "物伤结果", "法伤结果", "治疗能力"];

//灵饰各部件战斗属性信息
export const ls_type_attribute = {
    "手镯": { "主属性": ["封印命中等级", "抵抗封印等级"], "副属性": ["气血回复效果", "气血", "防御", "抗法术暴击等级", "格挡值", "法术防御", "抗物理暴击等级"] },
    "佩饰": { "主属性": ["速度"], "副属性": ["气血回复效果", "气血", "防御", "抗法术暴击等级", "格挡值", "法术防御", "抗物理暴击等级"] },
    "戒指": { "主属性": ["伤害", "防御"], "副属性": ["固定伤害", "法术伤害", "伤害", "封印命中等级", "法术暴击等级", "物理暴击等级", "狂暴等级", "穿刺等级", "法术伤害结果", "治疗能力", "速度"] },
    "耳饰": { "主属性": ["法术伤害", "法术防御"], "副属性": ["固定伤害", "法术伤害", "伤害", "封印命中等级", "法术暴击等级", "物理暴击等级", "狂暴等级", "穿刺等级", "法术伤害结果", "治疗能力", "速度"] },
};
// 灵饰普通属性
export const ls_basic_attribute = ["伤害", "防御", "气血", "速度"];
// 灵饰主属性范围
export const ls_master_attribute = {
    "封印命中等级": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "抵抗封印等级": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "防御": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "法术防御": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "速度": { "140": [20, 30], "120": [18, 27], "100": [16, 24], "80": [14, 21], "60": [12, 18] },
    "伤害": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "法术伤害": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] }
};
// 灵饰副属性范围
export const ls_sub_attribute = {
    "封印命中等级": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "抵抗封印等级": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "防御": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "气血回复效果": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "气血": { "140": [98, 147], "120": [84, 126], "100": [70, 105], "80": [56, 84], "60": [42, 63] },
    "抗法术暴击等级": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "格挡值": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "法术防御": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "抗物理暴击等级": { "140": [28, 42], "120": [24, 36], "100": [20, 30], "80": [16, 24], "60": [12, 18] },
    "速度": { "140": [10, 15], "120": [9, 13], "100": [8, 12], "80": [7, 10], "60": [6, 9] },
    "伤害": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "固定伤害": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "法术伤害": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "法术暴击等级": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "物理暴击等级": { "140": [14, 21], "120": [12, 18], "100": [10, 15], "80": [8, 12], "60": [6, 9] },
    "狂暴等级": { "140": [10, 15], "120": [9, 13], "100": [8, 12], "80": [7, 10], "60": [6, 9] },
    "穿刺等级": { "140": [10, 15], "120": [9, 13], "100": [8, 12], "80": [7, 10], "60": [6, 9] },
    "法术伤害结果": { "140": [10, 15], "120": [9, 13], "100": [8, 12], "80": [7, 10], "60": [6, 9] },
    "治疗能力": { "140": [10, 15], "120": [9, 13], "100": [80, 12], "80": [8, 10], "60": [6, 9] },
};

//法宝经验
export const fabao_exp = [
    [469350, 712000, 2028000, 4469000, 8500000, 14424000, 22652000, 33568000, 47556000],
    [10268, 472144, 1082236, 2237152, 4133500, 6967888, 10936924, 16237216, 23065372, 31618000, 40000000, 54683104],
    [199452, 385616, 790204, 1544928, 2781500, 4631632, 7227036, 10699424, 15180508, 20802000, 27695612, 35993056, 45826044, 57326288, 70625500],
    [199452, 385616, 790204, 1544928, 2781500, 4631632, 7227036, 10699424, 15180508, 20802000, 27695612, 35993056, 45826044, 57326288, 70625500, 90625500, 100625500, 120625500],
];
//灵宝经验
export const lingbao_exp = [206250000, 412500000, 618750000, 825000000, 1031250000, 1237500000];
//所有灵宝
export const all_lingbao = ["断穹巨剑", "静心禅珠", "宁心道符", "相思寒针", "风舞心经", "锢魂命谱", "青狮獠牙", "冥火炼炉", "缚仙蛛丝", "煞魂冥灯", "九霄龙锥", "化怨清莲", "真阳令旗", "天雷音鼓", "寒霜盾戟", "乾坤金卷", "乾坤木卷", "乾坤水卷", "乾坤火卷", "乾坤土卷", "定神仙琴", "赤炎战笛", "护体灵盾", "惊兽云尺", "战神宝典"];

// 不同等级的变身卡可变造型
const bs_level_data = [
    ["小象", "腾蛇", "龙马", "雪人", "树怪"],
    ["大海龟", "巨蛙", "海毛虫", "护卫", "树怪", "大蝙蝠", "山贼", "强盗", "野猪"],
    ["骷髅怪", "羊头怪", "蛤蟆精", "狐狸精", "老虎", "黑熊", "花妖"],
    ["牛妖", "小龙女", "野鬼", "狼", "虾兵", "蟹将"],
    ["龟丞相", "蜘蛛精", "黑熊精", "僵尸", "牛头", "马面"],
    ["雷鸟人", "蝴蝶仙子", "古代瑞兽", "白熊", "黑山老妖"],
    ["天兵", "天将", "地狱战神", "风伯", "凤凰", "蛟龙"],
    ["如意仙子", "巡游天神", "星灵仙子", "芙蓉仙子"], ["幽灵", "吸血鬼", "鬼将", "雾中仙", "灵鹤", "夜罗刹", "炎魔神", "噬天虎"],
    ["进阶猫灵人形", "进阶毗舍童子", "进阶混沌兽", "进阶曼珠沙华", "进阶夜罗刹"]
]
// 变身属性
export const bs_data = {
    "狐狸精": {
        "类型": "气血",
        "正负": 2,
        "等级": 2,
        "技能": "感知",
        "属性": 5
    },
    "老虎": {
        "类型": "速度",
        "正负": 2,
        "等级": 2,
        "技能": "强力",
        "属性": 10
    },
    "黑熊": {
        "类型": "灵力",
        "正负": 2,
        "等级": 2,
        "技能": "防御",
        "属性": 5
    },
    "花妖": {
        "类型": "",
        "正负": 0,
        "等级": 2,
        "技能": "慧根",
        "属性": 0
    },
    "牛妖": {
        "类型": "防御",
        "正负": 2,
        "等级": 3,
        "技能": "反击",
        "属性": 5
    },
    "小龙女": {
        "类型": "伤害",
        "正负": 2,
        "等级": 3,
        "技能": "驱鬼",
        "属性": 5
    },
    "野鬼": {
        "类型": "灵力",
        "正负": 2,
        "等级": 3,
        "技能": "夜战",
        "属性": 5
    },
    "狼": {
        "类型": "气血",
        "正负": 2,
        "等级": 3,
        "技能": "偷袭",
        "属性": 10
    },
    "虾兵": {
        "类型": "伤害",
        "正负": 2,
        "等级": 3,
        "技能": "必杀",
        "属性": 10
    },
    "蟹将": {
        "类型": "速度",
        "正负": 2,
        "等级": 3,
        "技能": "连击",
        "属性": 12
    },
    "龟丞相": {
        "类型": "气血",
        "正负": 1,
        "等级": 4,
        "技能": "",
        "属性": 7
    },
    "蜘蛛精": {
        "类型": "防御",
        "正负": 2,
        "等级": 4,
        "技能": "毒",
        "属性": 10
    },
    "黑熊精": {
        "类型": "防御",
        "正负": 2,
        "等级": 4,
        "技能": "反震",
        "属性": 10
    },
    "僵尸": {
        "类型": "气血",
        "正负": 1,
        "等级": 4,
        "技能": "弱点雷",
        "属性": 10
    },
    "牛头": {
        "类型": "",
        "正负": 0,
        "等级": 4,
        "技能": "招架",
        "属性": 0
    },
    "马面": {
        "类型": "伤害",
        "正负": 2,
        "等级": 4,
        "技能": "必杀",
        "属性": 8
    },
    "雷鸟人": {
        "类型": "气血",
        "正负": 2,
        "等级": 5,
        "技能": "飞行",
        "属性": 10
    },
    "蝴蝶仙子": {
        "类型": "防御",
        "正负": 2,
        "等级": 5,
        "技能": "魔之心",
        "属性": 10
    },
    "古代瑞兽": {
        "类型": "气血",
        "正负": 2,
        "等级": 5,
        "技能": "反震",
        "属性": 10
    },
    "白熊": {
        "类型": "",
        "正负": 0,
        "等级": 5,
        "技能": "迟钝",
        "属性": 0
    },
    "黑山老妖": {
        "类型": "速度",
        "正负": 2,
        "等级": 5,
        "技能": "偷袭",
        "属性": 10
    },
    "天兵": {
        "类型": "",
        "正负": 0,
        "等级": 6,
        "技能": "防御",
        "属性": 0
    },
    "天将": {
        "类型": "灵力",
        "正负": 2,
        "等级": 6,
        "技能": "强力",
        "属性": 8
    },
    "地狱战神": {
        "类型": "气血",
        "正负": 2,
        "等级": 6,
        "技能": "连击",
        "属性": 5
    },
    "风伯": {
        "类型": "防御",
        "正负": 2,
        "等级": 6,
        "技能": "敏捷",
        "属性": 5
    },
    "凤凰": {
        "类型": "",
        "正负": 0,
        "等级": 6,
        "技能": "飞行",
        "属性": 0
    },
    "蛟龙": {
        "类型": "",
        "正负": 0,
        "等级": 6,
        "技能": "永恒",
        "属性": 0
    },
    "芙蓉仙子": {
        "类型": "防御",
        "正负": 1,
        "等级": 7,
        "单独": 1,
        "技能": "再生",
        "属性": 30
    },
    "噬天虎": {
        "类型": "速度",
        "正负": 2,
        "等级": 8,
        "技能": "高级强力",
        "属性": 10
    },
    "巡游天神": {
        "类型": "速度",
        "正负": 2,
        "等级": 7,
        "技能": "必杀",
        "属性": 20
    },
    "狂豹人形": {
        "类型": "速度",
        "正负": 2,
        "等级": 8,
        "技能": "高级强力",
        "属性": 10
    },
    "般若天女": {
        "类型": "速度",
        "正负": 2,
        "等级": 8,
        "技能": "高级强力",
        "属性": 10
    },
    "进阶猫灵人形": {
        "类型": "气血",
        "正负": 1,
        "等级": 9,
        "技能": "高级幸运",
        "属性": 10
    },
    "进阶毗舍童子": {
        "类型": "伤害",
        "正负": 1,
        "等级": 9,
        "技能": "高级夜战",
        "属性": 5
    },
    "进阶混沌兽": {
        "类型": "气血",
        "正负": 1,
        "等级": 9,
        "技能": "高级魔之心",
        "属性": 5
    },
    "进阶曼珠沙华": {
        "类型": "气血",
        "正负": 1,
        "等级": 9,
        "技能": "高级敏捷",
        "属性": 5
    },
    "净瓶女娲": {
        "类型": "防御",
        "正负": 2,
        "等级": 8,
        "技能": "高级永恒",
        "属性": 5
    },
    "律法女娲": {
        "类型": "速度",
        "正负": 2,
        "等级": 8,
        "技能": "高级反击",
        "属性": 10
    },
    "灵符女娲": {
        "类型": "",
        "正负": 0,
        "等级": 8,
        "技能": "魔之心",
        "属性": 0
    },
    "大力金刚": {
        "类型": "灵力",
        "正负": 2,
        "等级": 8,
        "技能": "高级防御",
        "属性": 5
    },
    "雾中仙": {
        "类型": "防御",
        "正负": 2,
        "等级": 8,
        "技能": "高级敏捷",
        "属性": 10
    },
    "灵鹤": {
        "类型": "防御",
        "正负": 2,
        "等级": 8,
        "技能": "高级魔之心",
        "属性": 10
    },
    "炎魔神": {
        "类型": "气血",
        "正负": 2,
        "等级": 8,
        "技能": "高级魔之心",
        "属性": 15
    },
    "夜罗刹": {
        "类型": "速度",
        "正负": 1,
        "等级": 9,
        "技能": "高级夜战",
        "属性": 5
    },
    "小象": {
        "类型": "",
        "正负": 0,
        "等级": 0,
        "技能": "必杀",
        "属性": 0
    },
    "腾蛇": {
        "类型": "",
        "正负": 0,
        "等级": 0,
        "技能": "魔之心",
        "属性": 0
    },
    "龙马": {
        "类型": "",
        "正负": 0,
        "等级": 0,
        "技能": "夜战",
        "属性": 0
    },
    "雪人": {
        "类型": "",
        "正负": 0,
        "等级": 0,
        "技能": "永恒",
        "属性": 0
    },
    "巨蛙": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "大海龟": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "护卫": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "树怪": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "强盗": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "海毛虫": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "大蝙蝠": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "山贼": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "野猪": {
        "类型": "",
        "正负": 0,
        "等级": 1,
        "技能": "",
        "属性": 0
    },
    "骷髅怪": {
        "类型": "气血",
        "正负": 2,
        "等级": 2,
        "技能": "夜战",
        "属性": 20
    },
    "羊头怪": {
        "类型": "气血",
        "正负": 2,
        "等级": 2,
        "技能": "幸运",
        "属性": 10
    },
    "蛤蟆精": {
        "类型": "防御",
        "正负": 2,
        "等级": 2,
        "技能": "毒",
        "属性": 15
    },
    "进阶夜罗刹": {
        "类型": "速度",
        "正负": 1,
        "等级": 9,
        "技能": "高级夜战",
        "属性": 5
    },
    "鬼将": {
        "类型": "伤害",
        "正负": 2,
        "等级": 8,
        "技能": "高级必杀",
        "属性": 10
    },
    "吸血鬼": {
        "类型": "速度",
        "正负": 2,
        "等级": 8,
        "技能": "偷袭",
        "属性": 5
    },
    "幽灵": {
        "类型": "",
        "正负": 0,
        "等级": 8,
        "技能": "高级夜战",
        "属性": 0
    },
    "星灵仙子": {
        "类型": "灵力",
        "正负": 1,
        "等级": 7,
        "单独": 1,
        "技能": "慧根",
        "属性": 10
    },
    "如意仙子": {
        "类型": "灵力",
        "正负": 1,
        "等级": 7,
        "单独": 1,
        "技能": "慧根",
        "属性": 10
    }
};

/**
 * 根据角色模型随机取一个武器名称
 * @param {*} model 
 */
export function get_characters_random_weapons_name(model) {
    let index = G.RandomUtils.random_get_array(G.ItemExtData.weapons_type_enums[model]);
    return G.ItemExtData.equipment_index_data[index][0];
}

export function get_item_equipment_type(item_data) {
    let master_type = item_data["总类"];
    let type = item_data["分类"];
    if (master_type === 2) {
        switch (type) {
            case 1:
                return ["装备", "头盔", 0, 6];
            case 2:
                return ["装备", "项链", 1, 6];
            case 3:
                return ["装备", "武器", 2, 6];
            case 4:
                return ["装备", "衣服", 3, 6];
            case 5:
                return ["装备", "腰带", 4, 6];
            case 6:
                return ["装备", "鞋子", 5, 6];
            case 7:
                return ["召唤兽", "护腕", 0, 3];
            case 8:
                return ["召唤兽", "项圈", 1, 3];
            case 9:
                return ["召唤兽", "铠甲", 2, 3];
            case 10:
                return ["灵饰", "耳饰", 0, 4];
            case 11:
                return ["灵饰", "佩饰", 1, 4];
            case 12:
                return ["灵饰", "戒指", 2, 4];
            case 13:
                return ["灵饰", "手镯", 3, 4];
            case 15:
                return ["锦衣", "锦衣", 0, 8];
            case 16:
                return ["锦衣", "锦衣套装", 1, 8];
            case 17:
                return ["锦衣", "光环", 2, 8];
            case 18:
                return ["锦衣", "足迹", 3, 8];
            case 19:
                return ["锦衣", "特效", 4, 8];
            default:
                break;
        }
    }
    if (master_type === 141) {
        return ["暗器", "暗器", 0, 0];
    }
    if (master_type === 1000) {
        return ["法宝", "法宝", 0, 0];
    }
    if (master_type === 1001) {
        return ["神器", "神器", 0, 0];
    }
    if (master_type === 1002) {
        return ["灵宝", "灵宝", 0, 0];
    }
    if (master_type === 150) {
        return ["任务物品", "任务物品", 0, 0];
    }
    if (master_type === 11) {
        return ["传送", "传送", 0, 0];
    }
    if (master_type === 30) {
        return ["变身卡", "变身卡", 0, 0];
    }
    if (master_type === 203) {
        return ["内丹", "内丹", 0, 0];
    }
    if (master_type === 3 && type === 1) {
        return ["魔兽要诀", "魔兽要诀", 0, 0];
    }
    return ["其他", "", 0, 0];
}

// 加血道具数值
export const add_hp_items_data = {
    "包子": (level) => { return 100; },
    "烤鸭": (level) => { return level * 10 + 100; },
    "烤肉": (level) => { return level * 10; },
    "臭豆腐": (level) => { return level * 20 + 200; },
    "草果": (level) => { return 1; },
    "山药": (level) => { return 40; },
    "九香虫": (level) => { return 1; },
    "八角莲叶": (level) => { return 60; },
    "人参": (level) => { return 80; },
    "金创药": (level) => { return 400; },
    "小还丹": (level) => { return level * 15 + 100; },
    "金香玉": (level) => { return level * 20 + 100; },
    "固本培元丹": (level) => { return level * 20 + 100; },
    "千年保心丹": (level) => { return level * 10 + 200; },
    "十全大补丸": (level) => { return level * 10 + 200; },
    "五龙丹": (level) => { return level * 10 + 200; },
    //解除封类异常状态,恢复气血=品质×3。  解封成功率=(五龙品质+100-人物等级+60)%，最低几率为40%
    "舒筋活络丸": (level) => { return level * 9; },
    // 复活并回复气血=品质×3,临时气血上限=品质×7+100
    "佛光舍利子": (level) => { return level * 10; },
    "九转回魂丹": (level) => { return level * 10 + 200; },
    //复活人物并恢复气血=品质×5+100
    "九转续命丹": (level) => { return level * 10 + 200; },
    "天不老": (level) => { return 100; },
    "紫石英": (level) => { return 100; },
    "血色茶花": (level) => { return 150; },
    "鹿茸": (level) => { return 150; },
    "六道轮回": (level) => { return 200; },
    "熊胆": (level) => { return 200; },
    "凤凰尾": (level) => { return 250; },
    "硫磺草": (level) => { return 250; },
    "龙之心屑": (level) => { return 300; },
    "火凤之睛": (level) => { return 300; },
    "四叶花": (level) => { return 40; },
    "天青地白": (level) => { return 80; },
    "七叶莲": (level) => { return 60; },
};

// 加蓝道具数值
export const add_mp_items = {
    "佛跳墙": (level) => { return level * 10 + 100; },
    "定神香": (level) => { return level * 15 + 50 },
    "风水混元丹": (level) => { return level * 13 + 50; },
    "蛇蝎美人": (level) => { return level * 15 + 100; },
    "凝气丸": (level) => { return level * 15 + 100; },
    "十香返生丸": (level) => { return level * 13 + 50; },
    "七珍丸": (level) => { return level * 13 + 50; },
    "女儿红": (level) => { return 20; },
    "虎骨酒": (level) => { return 20; },
    "珍露酒": (level) => { return level * 0.4 + 20; },
    "梅花酒": (level) => { return level * 0.6; },
    "百味酒": (level) => { return level * 0.7; },
    "蛇胆酒": (level) => { return level * 1; },
    "醉生梦死": (level) => { return level * 10; },
    "醉仙果": (level) => { return level * 10; },
    "丁香水": (level) => { return 75; },
    "月星子": (level) => { return 75; },
    "仙狐涎": (level) => { return 100; },
    "地狱灵芝": (level) => { return 100; },
    "麝香": (level) => { return 100; },
    "血珊瑚": (level) => { return 100; },
    "餐风饮露": (level) => { return 100; },
    "白露为霜": (level) => { return 100; },
    "天龙水": (level) => { return 150; },
    "孔雀红": (level) => { return 150; },
    "紫丹罗": (level) => { return 20; },
    "佛手": (level) => { return 20; },
    "旋复花": (level) => { return 20; },
    "龙须草": (level) => { return 30; },
    "百色花": (level) => { return 30; },
    "香叶": (level) => { return 30; },
    "白玉骨头": (level) => { return 40; },
    "鬼切草": (level) => { return 40; },
    "灵脂": (level) => { return 40; },
    "曼陀罗花": (level) => { return 50; },
};

// 加血加蓝道具数值
export const add_hp_mp_data = {
    "翡翠豆腐": (level) => {
        let hp = level * 15 + 150;
        let mp = level * 15 + 100;
        return [hp, mp];
    },
}

/**
 * 获取恢复类道具数值
 * @param {*} item_data 
 * @returns 
 */
export function get_regen_item_value(item_data) {
    let item_name = item_data["名称"];
    // 品质
    let level = item_data["品质"] || 1;
    if (G.ItemUtils.add_hp_items_data[item_name]) {
        return [G.ItemUtils.add_hp_items_data[item_name](level)];
    }
    if (G.ItemUtils.add_mp_items[item_name]) {
        return [G.ItemUtils.add_mp_items[item_name](level)];
    }
    if (G.ItemUtils.add_hp_mp_data[item_name]) {
        return G.ItemUtils.add_hp_mp_data[item_name](level);
    }
    return undefined;
}


/**
 * 校验装备是否符合使用条件
 * @param {*} item 
 * @param {*} characters 
 * @returns 
 */
export function check_characters_equipment(item, characters) {

    if (item["总类"] !== 2) {
        return "#Y/这个物品不可以装备";
    }
    // TODO
    // if(!item["鉴定"]){
    //     return "#Y/该装备未鉴定，无法佩戴";
    // }
    if (!item["特效"].includes("无级别限制") && item["特效"].includes("简易") && item["等级限制"] !== undefined && item["等级限制"] > characters["等级"] + 5) {
        return `#Y${item["等级限制"] - 5}级才能佩戴`;
    }
    if (!item["特效"].includes("无级别限制") && item["等级限制"] !== undefined && item["等级限制"] > characters["等级"]) {
        return `#Y${item["等级限制"]}级才能佩戴`;
    }
    if (item["性别限制"] !== undefined && item["性别限制"] !== characters["性别"]) {
        return "#Y/性别不符"
    }
    if (item["耐久"] !== undefined && item["耐久"] <= 0) {
        return "#Y/该装备耐久不足，无法穿戴"
    }
    if (item["修理失败"] !== undefined && item["修理失败"] === 3 && item["耐久"] <= 0) {
        return "#Y/该装备因修理失败过度，而无法使用！"
    }
    if (item["专用"] !== undefined && item["专用"] !== characters["id"]) {
        return "#Y/你无法佩戴他人的专用装备";
    }

    if (item["子类"] === 911 && characters["门派"] !== "九黎城") {
        return "#Y/九黎城专属装备,其他门派不可使用。"
    }

    //  // 武器
    // if(item["分类"] === 3){
    //     if (characters["装备"] !== undefined && characters["装备"][2] !== undefined && characters["装备"][2]["子类"] !== 910) {
    //         return "#Y/该武器无法与当前携带的主武器共同装备。"
    //     }
    //     if (characters["装备"] !== undefined && characters["装备"][2] !== undefined && characters["装备"][2]["子类"] === 910) {
    //         return "#Y/当前装备与当前武器冲突,请装备副武器。"
    //     }
    // }

    // //头盔 衣服
    // if(item["分类"] === 1 || item["分类"] === 4 ){
    //     if (characters["装备"] !== undefined && characters["装备"][3] !== undefined && characters["装备"][3]["子类"] !== 910) {
    //         return "#Y/#Y/请先脱下当前穿戴防具。"
    //     }
    // }
    return "";
}


/**
 * 生成道具数据
 * @param {*} item_name 
 */
export function generate_item_data(item_name, production_type) {
    let item_data = G.AllItemData.default[item_name];
    if (item_data === undefined) {
        console.warn(`物品[` + item_name + `]不存在`)
        return undefined;
    }
    let build_data = {};

    build_data["名称"] = item_name;
    build_data["描述"] = item_data["wp_1"];
    build_data["总类"] = item_data["wp_2"];
    build_data["分类"] = item_data["wp_3"];
    build_data["子类"] = item_data["wp_4"];
    build_data["可叠加"] = item_data["可叠加"];
    build_data["等级限制"] = item_data["wp_5"];
    build_data["性别限制"] = item_data["wp_6"];
    build_data["角色限制"] = item_data["wp_7"];
    // build_data["资源"] = item_data["wp_11"];
    // build_data["小资源"] = item_data["wp_12"];
    // build_data["大资源"] = item_data["wp_13"];
    build_data["价格"] = item_data["wp_14"];
    build_data["颜色"] = item_data["wp_20"];
    build_data["符石属性"] = item_data["wp_21"];
    build_data["鉴定"] = true;
    build_data["不可交易"] = false;
    let equipment_type = get_item_equipment_type(build_data);
    build_data["物品类型"] = equipment_type[0];
    build_data["识别码"] = `${Date.now()}_${G.RandomUtils.generate_random(100, 999)}_${G.RandomUtils.generate_random(100, 999)}`;
    generate_equipment(build_data, 10, false, equipment_type, production_type);
    return build_data;

}

/**
 * 生成装备属性
 * @param {*} build_data 
 * @param {*} production_level 制造等级
 * @param {*} equipment_type 装备类型
 * @param {*} is_no_level 是否无级别装备 
 * @param {*} production_type 生产方式 
 */
function generate_equipment(build_data, production_level, is_no_level = false, equipment_type, production_type) {
    if (equipment_type[0] !== "其他") {
        equipment_common_function(build_data, production_level, equipment_type, is_no_level);
        if ((build_data["等级限制"] === undefined || build_data["等级限制"] === 0 || is_no_level) && build_data["特效"] && (typeof build_data["特效"] !== "string")) {
            build_data["特效"].push("无级别限制");
            build_data["等级限制"] = undefined;
        }
        build_data["生产方式"] = production_type;
        build_data["制造者"] = "系统";
    }
}




/**
 * 生成装备属性
 * @param {*} data 
 * @param {*} level 制造技能等级
 * @param {*} equipment_type 装备类型信息 
 * @param {*} double_plus 双加 
 */
function equipment_common_function(data, level = 1, equipment_type, double_plus = false) {
    let master_type = equipment_type[0];
    let sub_type = equipment_type[1];
    switch (master_type) {
        case "装备":
            // 构建角色装备属性
            build_characters_equipment_attributes(data, level, sub_type, double_plus);
            break;
        case "召唤兽":
            // 召唤兽装备属性
            build_pet_equipment_attributes(data, sub_type);
            break;
        case "灵饰":
            //灵饰装备属性生成
            build_lingshi_equipment_attributes(data, sub_type)
            break;
        case "锦衣":
            // 锦衣属性生成
            break;
        case "法宝":
            // 法宝属性生成
            build_fabao_attributes(data);
            break;
        case "灵宝":
            // 灵宝属性生成
            build_lingbao_attributes(data);
            break;
        case "暗器":
            // 暗器属性生成
            build_anqi_attributes(data);
            break;
        case "传送":
            // 传送类道具
            build_delivry_item_attributes(data);
            break;
        case "变身卡":
            // 变身道具
            build_bs_card_attributes(data);
            break;
        case "内丹":
            build_nd_attributes(data);
            break;
        case "魔兽要诀":
            build_msyj_attributes(data);
            break;
        default:
            break;
    }
}

/**
 * 构建角色装备属性
 * @param {*} data 
 * @param {*} level 制造技能等级
 * @param {*} sub_type 装备类型信息 
 * @param {*} double_plus 双加 
 */
function build_characters_equipment_attributes(data, level, sub_type, double_plus) {
    data["部位类型"] = sub_type;
    // 基础属性
    let production_data = G.ItemExtData.equipment_production_data[sub_type][level];
    //属性上限
    let max_size = G.RandomUtils.generate_random(90, 100) * 0.01
    //附加属性
    let additional_attributes = false;
    //通用特效
    let common_effect = [];
    // 装备属性生成
    switch (sub_type) {
        case "武器":
            data["命中"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            data["伤害"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "神佑", "必中", "绝杀", "坚固", "精致", "永不磨损", "易修理"];
            additional_attributes = true;
            break;
        case "头盔":
            data["防御"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            data["魔法"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "再生", "坚固", "精致", "永不磨损", "易修理"];
            break;
        case "项链":
            data["灵力"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "神农", "专注", "坚固", "精致", "永不磨损", "易修理"];
            break;
        case "衣服":
            data["防御"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "坚固", "精致", "永不磨损", "易修理", "伪装"];
            additional_attributes = true;
            break;
        case "腰带":
            data["防御"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            data["气血"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "坚固", "精致", "永不磨损", "易修理", "愤怒", "暴怒"];
            additional_attributes = true;
            break;
        case "鞋子":
            data["防御"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            data["敏捷"] = G.RandomUtils.generate_random(production_data[0], production_data[1] * max_size);
            common_effect = ["珍宝", "简易", "坚固", "精致", "狩猎", "迷踪", "永不磨损", "易修理"];
            break;
        default:
            break;
    }
    if (common_effect.length > 0) {
        //随机给予特效
        data["特效"] = [];
        let probability = G.RandomUtils.generate_random(1, 10);
        if (probability >= 5) {
            let tmp_effect = [];
            let res = G.RandomUtils.random_get_array_return_index(common_effect)
            tmp_effect.push(res[1]);
            common_effect.splice(res[0], 1);
            for (let index = 0; index < 1; index++) {
                if (G.RandomUtils.generate_random(1, 10) >= 5) {
                    let res = G.RandomUtils.random_get_array_return_index(common_effect)
                    tmp_effect.push(res[1]);
                    common_effect.splice(res[0], 1);
                }
            }
            data["特效"] = tmp_effect;
        }
    }
    // 随机给予特技
    if (G.RandomUtils.chance(50)) {
        data["特技"] = G.RandomUtils.random_get_array(ex_skill);
    }
    //计算双加数据
    let double_plus_data = [0, 0];
    if (double_plus) {
        if (level <= 120) {
            double_plus_data = [G.RandomUtils.generate_random(10, 40), 40];
        } else if (level <= 140) {
            double_plus_data = [G.RandomUtils.generate_random(20, 50), 50];
        } else if (level <= 150) {
            double_plus_data = [G.RandomUtils.generate_random(30, 60), 60];
        } else if (level <= 160) {
            double_plus_data = [G.RandomUtils.generate_random(40.70), 70];
        } else {
            double_plus_data = [G.RandomUtils.generate_random(45.75), 70];
        }
    }
    // 根据熟练度增加概率 基本概率为 60% 熟练度额外增加百分比概率
    let proficiency = 0;
    // TODO 打造技巧对打造装备的影响
    // 	if 对方id and 玩家数据[对方id].角色 then
    // 		熟练度=玩家数据[对方id].角色:取生活技能熟练("打造技巧")
    // 	end

    //附加属性 如果指定了必定必双加则直接百分百附加两个属性
    let keys = ["敏捷", "体质", "力量", "耐力", "魔力"];
    if (additional_attributes) {
        //随机从五种属性中添加
        if (double_plus) {
            //双加
            for (let index = 0; index < 2; index++) {
                let res = G.RandomUtils.random_get_array_return_index(keys);
                data[res[1]] = double_plus_data[index];
                keys.splice(res[0], 1);
            }
        }
        else if (G.RandomUtils.chance(proficiency + 60)) {
            //单加
            data[G.RandomUtils.random_get_array(keys)] = G.RandomUtils.generate_random(10, 40);
        }
    }
    data["五行"] = G.RandomUtils.random_wx();
    data["耐久"] = G.RandomUtils.generate_random(500, 700);
    data["鉴定"] = true; //默认鉴定
}

/**
 * 构建召唤兽装备属性
 * @param {*} data 
 * @param {*} sub_type 装备类型信息 
 */
function build_pet_equipment_attributes(data, sub_type) {
    data["部位类型"] = sub_type;
    data["级别限制"] = data["级别限制"] ? data["级别限制"] : 10;
    //灵气
    let lq = G.RandomUtils.generate_random(30, 60) * 0.15;
    //等差序列
    let lv_num = Math.floor(data["级别限制"] / 10);

    switch (sub_type) {
        case "护腕":
            data["命中"] = Math.floor(G.RandomUtils.generate_random(5, data["级别限制"] * 0.1 + 10));
            break;
        case "项圈":
            data["速度"] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 3 + lq));
            break;
        case "铠甲":
            data["防御"] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 9 + lq));
            break;
        default:
            break;
    }

    // 附加范围
    let keys = ["伤害", "灵力", "敏捷", "耐力", "体质", "力量", "魔力", "气血", "魔法"];
    for (let index = 0; index < 3; index++) {
        let key_index = G.RandomUtils.random_get_array_return_index(keys);
        let key = key_index[0];
        //百分之50的概率附加属性
        if (G.RandomUtils.chance(50)) {
            switch (key[0]) {
                case "伤害":
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 5 + lq));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 15) : data[key];
                    break;
                case "气血":
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num * 4, lv_num * 8 + lq));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 100) : data[key];
                    break;
                case "魔法":
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num * 7, lv_num * 12 + lq));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 100) : data[key];
                    break;
                case "灵力":
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 2));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 15) : data[key];
                    break;
                case "力量":
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 3));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 15) : data[key];
                    break;
                default:
                    data[key] = Math.floor(G.RandomUtils.generate_random(lv_num, lv_num * 2));
                    // 百分之10的概率debuff
                    data[key] = G.RandomUtils.chance(10) ? -G.RandomUtils.generate_random(1, 15) : data[key];
                    break;
            }
        }
        //移除已经附加过的属性
        keys.slice(key_index[1], 1);
    }
}

/**
 * 构建灵饰装备属性
 * @param {*} data 
 * @param {*} sub_type 装备类型信息 
 */
function build_lingshi_equipment_attributes(data, sub_type) {
    data["部位类型"] = sub_type;
    let level = data["等级限制"];
    data["幻化等级"] = 0;
    data["耐久"] = 500;
    data["鉴定"] = true;
    data["幻化属性"] = { "基础": [], "附加": [] };
    // 根据部位类型随机获取一个基础属性
    let master_key = G.RandomUtils.random_get_array(ls_type_attribute[sub_type]["主属性"]);
    // 随机赋予幻化基础属性
    let master_value = ls_master_attribute[master_key][level];
    data["幻化属性"]["基础"] = {
        "类型": master_key,
        "数值": G.RandomUtils.generate_random(master_value[0], master_value[1]),
        "强化": 0
    };
    //构建附加属性
    for (let index = 0; index < 5; index++) {
        //随机取副属性
        let sub_key = G.RandomUtils.random_get_array(ls_type_attribute[sub_type]["副属性"]);
        let sub_values = ls_sub_attribute[sub_key][level];
        let sub_index = data["幻化属性"]["附加"].length;
        for (let j = 0; j < data["幻化属性"]["附加"].length; j++) {
            if (data["幻化属性"]["附加"][j]["类型"] === sub_key) {
                sub_index = j;
                break;
            }
        }
        if (sub_index === -1) {
            data["幻化属性"]["附加"].push();
        }
        //随机赋值
        data["幻化属性"]["附加"][sub_index] = {
            "类型": sub_key,
            "数值": G.RandomUtils.generate_random(sub_values[0], sub_values[1]),
            "强化": 0
        };
    }
    data["特效"] = "超级简易";
}

/**
 * 构建法宝属性
 * @param {*} data 
 */
function build_fabao_attributes(data) {
    let item_data = G.AllItemData.default[data["名称"]];
    data["物品类型"] = "法宝";
    data["法宝类型"] = item_data["wp_2"];
    data["法宝等级"] = item_data["wp_3"];
    data["使用"] = item_data["wp_5"]; // 0 佩戴战斗生效 1无需佩戴战斗使用 2 无需佩戴
    data["等级限制"] = item_data["wp_6"];
    data["境界"] = 1;
    data["灵气"] = 500;
    data["冷却回合"] = data["wp_7"];
    data["持续回合"] = data["wp_8"];
    data["五行"] = G.RandomUtils.random_get_array(["金", "木", "水", "火", "土"]);
    data["当前经验"] = 0;
    data["升级经验"] = fabao_exp[0][0];
}

/**
 * 构建灵宝属性
 * @param {*} data 
 */
function build_lingbao_attributes(data) {
    let item_data = G.AllItemData.default[data["名称"]];
    data["物品类型"] = "灵宝";
    data["使用"] = item_data["wp_5"];
    data["门派"] = data["wp_6"];
    data["战斗效果"] = data["wp_15"];
    data["境界"] = 1;
    data["灵气"] = 500;
    data["当前经验"] = 0;
    data["升级经验"] = fabao_exp[0];
}

/**
 * 构建暗器属性
 * @param {*} data 
 */
function build_anqi_attributes(data) {
    let item_data = G.AllItemData.default[data["名称"]];
    data["物品类型"] = "暗器";
    data["伤害"] = item_data["wp_4"];
}

/**
 * 构建传送类道具属性
 * @param {*} data 
 */
function build_delivry_item_attributes(data) {
    let item_data = G.AllItemData.default[data["名称"]];
    data["物品类型"] = "传送";
    data["次数"] = item_data["wp_4"];
    switch (data["名称"]) {
        case "黄色合成旗":
            data["xy"] = [{ "y": 13, "x": 13 }, { "y": 55, "x": 29 }, { "y": 120, "x": 55 }, { "y": 133, "x": 167 }, { "y": 13, "x": 209 }, { "y": 125, "x": 13 }, { "y": 81, "x": 33 }, { "y": 76, "x": 191 }, { "y": 54, "x": 122 }, { "y": 20, "x": 127 }];
            data["地图"] = 1092;
            break;
        case "绿色合成旗":
            data["xy"] = [{ "y": 203, "x": 141 }, { "y": 183, "x": 33 }, { "y": 74, "x": 52 }, { "y": 14, "x": 107 }, { "y": 158, "x": 106 }, { "y": 99, "x": 120 }, { "y": 119, "x": 43 }, { "y": 30, "x": 25 }];
            data["地图"] = 1070;
            break;
        case "白色合成旗":
            data["xy"] = [{ "y": 117, "x": 57 }, { "y": 81, "x": 107 }, { "y": 36, "x": 64 }, { "y": 18, "x": 232 }, { "y": 108, "x": 260 }, { "y": 122, "x": 174 }, { "y": 137, "x": 22 }, { "y": 66, "x": 36 }, { "y": 139, "x": 221 }, { "y": 88, "x": 214 }, { "y": 16, "x": 120 }, { "y": 61, "x": 143 }, { "y": 15, "x": 33 }];
            data["地图"] = 1501;
            break;
        case "蓝色合成旗":
            data["xy"] = [{ "y": 92, "x": 581 }, { "y": 43, "x": 630 }, { "y": 63, "x": 16 }, { "y": 17, "x": 24 }, { "y": 14, "x": 217 }, { "y": 98, "x": 201 }, { "y": 102, "x": 41 }, { "y": 8, "x": 59 }, { "y": 10, "x": 170 }, { "y": 60, "x": 243 }, { "y": 34, "x": 330 }, { "y": 107, "x": 371 }, { "y": 31, "x": 559 }, { "y": 8, "x": 530 }, { "y": 112, "x": 477 }, { "y": 29, "x": 439 }];
            data["地图"] = 1173;
            break;
        default:
            break;
    }
}

/**
 * 构建变身道具属性
 * @param {*} data 
 */
function build_bs_card_attributes(data) {
    data["物品类型"] = "变身卡";
    // 随机等级
    let level = G.RandomUtils.generate_random(1, bs_level_data.length);
    data["等级"] = level;
    // 随机等级的基础上随机造型
    data["造型"] = G.RandomUtils.random_get_array(bs_level_data[level - 1]);
    let orthe_data = bs_data[data["造型"]];
    data["类型"] = orthe_data["类型"];
    data["单独"] = orthe_data["单独"];
    data["正负"] = orthe_data["正负"];
    data["技能"] = orthe_data["技能"];
    data["属性"] = orthe_data["属性"];
    data["次数"] = level;
}


/**
 * 构建内丹道具属性
 * @param {*} data 
 */
function build_nd_attributes(data) {
    data["物品类型"] = "内丹";
    if (data["名称"] === "召唤兽内丹") {
        data["特效"] = G.RandomUtils.random_get_array(G.NeiDanData.normal);
    }
    if (data["名称"] === "高级召唤兽内丹") {
        data["特效"] = G.RandomUtils.random_get_array(G.NeiDanData.high_level);
    }
}


export const msyj_skill_data = {
    "魔兽要诀": ["反震", "吸血", "反击", "连击", "飞行", "驱鬼", "隐身", "感知", "再生", "冥思", "慧根", "必杀", "幸运", "神迹", "招架", "永恒", "敏捷", "强力", "防御", "偷袭", "毒", "驱鬼", "鬼魂术", "魔之心", "神佑复生", "精神集中", "否定信仰", "雷击", "落岩", "水攻", "烈火", "法术连击", "法术暴击", "法术波动", "雷属性吸收", "土属性吸收", "火属性吸收", "水属性吸收", "迟钝"],
    "高级魔兽要诀": ["高级夜战", "高级反震", "高级吸血", "嗜血追击", "高级反击", "高级连击", "高级飞行", "高级驱鬼", "高级隐身", "高级感知", "高级再生", "高级冥思", "高级慧根", "高级必杀", "高级幸运", "高级神迹", "高级招架", "高级永恒", "高级敏捷", "高级强力", "高级防御", "高级偷袭", "高级毒", "高级驱鬼", "高级鬼魂术", "高级魔之心", "高级神佑复生", "高级精神集中", "高级否定信仰", "高级合纵", "高级独行", "奔雷咒", "泰山压顶", "水漫金山", "地狱烈火", "高级法术连击", "高级法术暴击", "高级法术波动", "高级雷属性吸收", "高级土属性吸收", "高级火属性吸收", "高级水属性吸收"],
    "特殊魔兽要诀": ["龙魂", "出其不意", "从天而降", "苍鸾怒击", "浮云神马", "上古灵符", "凝光炼彩", "超级神柚复生", "净台妙谛", "灵山禅语", "超级三昧真火", "桀骜自恃", "力劈华山", "善恶有报", "壁垒击破", "惊心一剑", "法术防御", "死亡召唤"],
    "特色魔兽要诀": ["特色善恶有报"],
    "超级魔兽要诀": ["超级必杀", "超级毒", "超级法术暴击", "超级法术波动", "超级法术连击", "超级反击", "超级反震", "超级防御", "超级飞行", "超级否定信仰", "超级感知", "超级慧根", "超级火属性吸收", "超级进击必杀", "超级精神集中", "超级雷属性吸收", "超级连击", "超级敏捷", "超级冥思", "超级魔之心", "超级强力", "超级驱鬼", "超级神迹", "超级水属性吸收", "超级偷袭", "超级土属性吸收", "超级吸血", "超级幸运", "超级夜战", "超级遗志", "超级隐身", "超级永恒", "超级再生", "超级招架", "超级合纵", "超级进击法暴", "超级水漫金山", "超级奔雷咒", "超级泰山压顶", "超级地狱烈火", "超级壁垒击破"],
}

/**
 * 构建魔兽要诀道具属性
 * @param {*} data 
 */
function build_msyj_attributes(data) {
    data["物品类型"] = "魔兽要诀";
    let name = data["名称"];
    data["附带技能"] = G.RandomUtils.random_get_array(msyj_skill_data[name]);
}


/**
 * 门派对应法宝
 */
export const sects_fabao_names = {
    "大唐官府": ["七杀", "干将莫邪"],
    "化生寺": ["罗汉珠", "慈悲"],
    "方寸山": ["天师符", "救命毫毛"],
    "女儿村": ["织女扇", "曼陀罗"],
    "天宫": ["雷兽", "伏魔天书"],
    "普陀山": ["金刚杵", "普渡"],
    "龙宫": ["分水", "镇海珠"],
    "五庄观": ["定风珠", "奇门五行令"],
    "魔王寨": ["赤焰", "五火神焰印"],
    "狮驼岭": ["兽王令", "失心钹"],
    "盘丝洞": ["忘情", "迷魂灯"],
    "阴曹地府": ["摄魂", "九幽"],
    "神木林": ["月影", "神木宝鼎"],
    "凌波城": ["天煞", "斩魔"],
    "无底洞": ["幽灵珠", "金蟾", "宝烛"],
    "花果山": ["琉璃灯", "金箍棒"],
    "九黎城": ['驭魔笼', "铸兵锤"],
    "无门派": [],
};
/**
 * 门派对应神器名称
 */
export const sects_shenqi_names = {
    "大唐官府": "轩辕剑", "化生寺": "墨魂笔", "方寸山": "黄金甲", "女儿村": "泪痕碗", "天宫": "独弦琴",
    "普陀山": "华光玉", "龙宫": "清泽谱", "五庄观": "星斗盘", "魔王寨": "明火珠", "狮驼岭": "噬魂齿",
    "盘丝洞": "昆仑镜", "阴曹地府": "四神鼎", "神木林": "月光草", "凌波城": "天罡印", "无底洞": "玲珑结",
    "花果山": "鸿蒙石", "九黎城": "魔息角"
};

//神器五行属性
export const shenqi_wx_attribute = { "金": "速度", "木": "气血", "土": "抵抗封印" };

//门派神器属性
export const sects_shenqi_attribute = {
    "大唐官府": ["伤害", "物理暴击"], "化生寺": ["防御", "治疗能力"], "方寸山": ["封印命中", "法术伤害"],
    "女儿村": ["封印命中", "固定伤害"], "天宫": ["法术伤害", "封印命中"], "普陀山": ["固定伤害", "治疗能力"],
    "龙宫": ["法术伤害", "法术暴击"], "五庄观": ["伤害", "封印命中"], "魔王寨": ["法术伤害", "法术暴击"], "狮驼岭": ["伤害", "物理暴击"],
    "盘丝洞": ["封印命中", "法术防御"], "阴曹地府": ["伤害", "法术防御"], "神木林": ["法术伤害", "法术暴击"],
    "凌波城": ["伤害", "物理暴击"], "无底洞": ["封印命中", "治疗能力"], "花果山": ["伤害", "物理暴击"], "九黎城": ["伤害", "物理暴击"]
};

//门派神器技能
export const sects_shenqi_skill = {
    "大唐官府": ["藏锋敛锐", "惊锋"], "化生寺": ["风起云墨", "挥毫"], "方寸山": ["披坚执锐", "金汤之固"], "女儿村": ["盏中晴雪", "泪光盈盈"], "天宫": ["弦外之音", "裂帛"],
    "普陀山": ["玉魄", "璇华"], "龙宫": ["定风波", "沧浪赋"], "五庄观": ["斗转参横", "静笃"], "魔王寨": ["业焰明光", "流火"], "狮驼岭": ["蛮血", "狂战"],
    "盘丝洞": ["镜花水月", "澄明"], "阴曹地府": ["亡灵泣语", "魂魇"], "神木林": ["凭虚御风", "钟灵"], "凌波城": ["威服天下", "酣战"], "无底洞": ["情思悠悠", "相思"],
    "花果山": ["万物滋长", "开辟"], "九黎城": ["鸣空", "骇神"]
};

/**
 * 获取法宝门派
 * @param {*} name 
 * @returns 
 */
export function get_fabao_sects_name(name) {
    for (const sects_name in sects_fabao_names) {
        if (sects_fabao_names[sects_name].includes(name)) {
            return sects_name;
        }
    }
    return "无门派";
}

/**
 * 构建神器属性
 * @param {*} sects_name 
 */
export function build_shenqi_attributes(sects_name) {
    //获取门派神器
    let shenqi_name = sects_shenqi_names[sects_name];
    let data = generate_item_data(shenqi_name);
    data["物品类型"] = "神器";
    data["佩戴"] = false;
    data["位置"] = null;
    data["技能"] = [];
    for (let index = 0; index < sects_shenqi_skill[sects_name].length; index++) {
        const skill_name = sects_shenqi_skill[sects_name][index];
        data["技能"].push({
            "名称": skill_name,
            "等级": 1,
        });
    }
    data["灵气"] = 50;
    data["等级"] = 1;
    data["解锁点"] = 0;
    data["五行"] = [];
    data["解锁"] = [];
    data["灵犀玉"] = [];
    for (let index = 0; index < 5; index++) {
        let wx_name = G.RandomUtils.random_wx();
        data["五行"][index] = {};
        data["五行"][index]["名称"] = wx_name;
        data["五行"][index]["解锁"] = false;
        data["五行"][index]["数值"] = 0;
        if (wx_name === "水") {
            data["五行"][index]["属性"] = sects_shenqi_attribute[sects_name][0];
        } else if (wx_name === "火") {
            data["五行"][index]["属性"] = sects_shenqi_attribute[sects_name][1];
        } else {
            data["五行"][index]["属性"] = shenqi_wx_attribute[wx_name];
        }
    }
    return data;
}


const all_qhs = ["青龙石", "白虎石", "朱雀石", "玄武石"]
export function random_qiang_hua_shi() {
    G.RandomUtils.random_get_array(all_qhs);
}

// 宝石数据
export const baoshi_data = ["红玛瑙", "太阳石", "舍利子", "黑宝石", "月亮石", "光芒石", "翡翠石"];
export function random_bao_shi() {
    G.RandomUtils.random_get_array(baoshi_data)
}

